/**
 * ControladoraDocenteImparte.java
 */

 /**
 *  AdSec: Administrador de Secundarias
 *  Copyright (C) 2009 Daniela Ramírez Chaves (dannyrch@gmail.com)
 *  Copyright (C) 2009 Leonel Salazar Valverde (leo87sv@gmail.com)
 *
 *  This file is part of AdSec.
 *  AdSec is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  AdSec is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with AdSec.  If not, see <http://www.gnu.org/licenses/>.
 */

package adsec.negocios;
import java.util.LinkedList;
import adsec.entidades.Docente;
import adsec.datos.ControladoraBDDocenteImparte;
import adsec.entidades.Anio;
import adsec.entidades.MateriaCursada;
import adsec.entidades.MateriaImpartida;
import adsec.entidades.Nivel;
import adsec.entidades.Seccion;


public class ControladoraDocenteImparte {

    private ControladoraBDDocenteImparte controladoraBD;

    public ControladoraDocenteImparte(){
        this.controladoraBD = new ControladoraBDDocenteImparte();

    }//fin de constructor

    public int actualizarDocenteImparte(LinkedList<MateriaImpartida> listaMateriaImpartida, String cedula, int año){
        int resultado = this.eliminarDocenteImparte(cedula, año);
        if(resultado == UtilidadesCapaNegocios.QUERY_OK){
            resultado = this.controladoraBD.actualizarDocenteImparte(listaMateriaImpartida);
        }
        return resultado;
    }

    public int eliminarDocenteImparte(String cedula, int año){
        return this.controladoraBD.eliminarDocenteImparte(cedula, año);
    }

    public LinkedList<MateriaImpartida> consultarMateriasImparte(String cedula, int año){
        return this.controladoraBD.consultarMateriasImparte(cedula, año);
    }//fin de consultarMateriasImparte

    public LinkedList<Docente> consultarDocentes(){
        ControladoraDocente contDocente = new ControladoraDocente();
        return contDocente.consultarDocentes();
    }//fin de consultarDocentes

    public LinkedList<MateriaCursada> consultarMateriasCursadas(int año, int nivel){
        ControladoraMateriaCursada controladora = new ControladoraMateriaCursada();
        return controladora.consultarMateriasCursadas(año, nivel);
    }

    public LinkedList<Anio> consultarAños(){
        ControladoraAnio controladoraAño = new ControladoraAnio();
        return controladoraAño.consultarAnios();
    }

    public LinkedList<Nivel> consultarNivelesTodos(){
        ControladoraNivel controladoraNivel = new ControladoraNivel();
        return controladoraNivel.consultarNivelesTodos();
    }

    public LinkedList<Seccion> consultarSecciones(Anio año, Nivel nivel){
        ControladoraSeccion controladoraSeccion = new ControladoraSeccion();
        return controladoraSeccion.consultarSecciones(año, nivel);
    }

    public Docente consultarDatosDocenteImparte(Seccion seccion, MateriaCursada materia){
        return this.controladoraBD.consultarDatosDocenteImparte(seccion, materia);
    }
}//fin de ControladoraDocente
